/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 晓星航
 * Date: 2023-10-18
 * Time: 10:48
 */
public class ContestRanking {
    public static void main(String[] args) {
        int n = 5;
        int[] guessA = {0, 3, 5, 0, 0, 0};
        int[] guessB = {0, 0, 0, 2, 4, 0};
        int[] guessC = {0, 1, 0, 0, 4, 0};
        int[] guessD = {0, 0, 1, 2, 0, 0};
        int[] guessE = {0, 0, 0, 2, 0, 3};

        int[] actual = new int[n];
        boolean[] used = new boolean[n + 1];

        // 根据 A 的猜测排除不可能的答案
        used[guessA[1]] = true;
        used[guessA[2]] = true;

        // 假设 D 排名为第二
        for (int i = 1; i <= n; i++) {
            if (!used[i]) {
                actual[1] = i;
                used[i] = true;
                break;
            }
        }

        // 根据 B 的猜测排除不可能的答案
        used[guessB[3]] = true;
        used[guessB[4]] = true;

        // E 的排名必须是第五
        actual[n - 1] = 5;
        used[5] = true;

        // 根据 C 的猜测确定 B 的排名为第一
        actual[0] = guessC[1];
        used[guessC[1]] = true;

        // 根据 D 的猜测确定 C 和 B 的排名
        actual[2] = guessD[2];

        // 根据 E 的猜测确定 D 的排名
        actual[3] = guessE[3];

        // 输出实际排名结果
        System.out.print("实际排名：");
        for (int i = 0; i < n; i++) {
            System.out.print(actual[i]);
            if (i != n - 1) {
                System.out.print(" > ");
            }
        }
    }
}
